package cn.edu.sasu.service;

import cn.edu.sasu.common.base.LayuiRespResult;
import cn.edu.sasu.common.base.RespResult;
import cn.edu.sasu.domain.dto.SysUserSaveDTO;
import cn.edu.sasu.domain.dto.UpdatePasswordDTO;
import cn.edu.sasu.domain.vo.SysUserInfoVO;

import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.net.HttpCookie;

public interface SysUserService {

    /**
     * 根据用户名和密码实现登录功能
     * @param username
     * @param password
     * @return
     */
    RespResult login(HttpServletResponse response, String username, String password);


    /**
     * 修改系统用户密码
     * @param updatePasswordDTO
     * @return
     */
    RespResult updatePassword(UpdatePasswordDTO updatePasswordDTO);

    /**
     * 查询所有系统用户
     * @return
     */
    LayuiRespResult findSysUserAll(Integer page,Integer limit);

    /**
     * 根据用户ID删除系统用户信息
     * @param userId
     * @return
     */
    RespResult delSysUserByUserId(Integer userId);

    /**
     * 批量删除
     * @param userIds
     * @return
     */
    RespResult batchdel(Integer[] userIds);

    /**
     * 根据条件搜索
     * @param page
     * @param limit
     * @param username
     * @return
     */
    LayuiRespResult search(Integer page, Integer limit, String username);

    /**
     * 添加用户
     * @param sysUserSaveDTO
     * @return
     */
    RespResult save(SysUserSaveDTO sysUserSaveDTO);

    RespResult updateInfo(SysUserInfoVO sysUserInfoVO);
}
